%%=====================================================================================
%%
%%         File:  awk-hotkeys.tex
%%
%%  Description:  awk-support.vim : Key mappings for Awk without GUI.
%%
%%      Version:  see \Pluginversion
%%      Created:  20.12.2012
%%     Revision:  29.06.2017
%%
%%       Author:  Wolfgang Mehner, wolfgang-mehner@web.de
%%                (formerly Dr. Fritz Mehner (fgm), mehner.fritz@web.de)
%%    Copyright:  Copyright (c) 2012-2017, Wolfgang Mehner
%%
%%=====================================================================================

%%======================================================================
%%  LaTeX settings       [[[1
%%======================================================================

\documentclass[oneside,10pt,landscape,DIV16]{scrartcl}

\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lastpage}
\usepackage{multicol}
\usepackage{fancyhdr}

\setlength\parindent{0pt}

\newcommand{\Pluginversion}{1.4pre}
\newcommand{\ReleaseDate}{\today}
\newcommand{\Rep}{{\scriptsize{[n]}}}

%%----------------------------------------------------------------------
%%  fancyhdr
%%----------------------------------------------------------------------
\pagestyle{fancyplain}
\fancyhf{}
\fancyfoot[L]{\small \ReleaseDate}
\fancyfoot[C]{\small awk-support.vim}
\fancyfoot[R]{\small \textbf{Page \thepage{} / \pageref{LastPage}}}
\renewcommand{\headrulewidth}{0.0pt}

%%----------------------------------------------------------------------
%%  luximono : Type1-font
%%  Makes keyword stand out by using semibold letters.
%%----------------------------------------------------------------------
\usepackage[scaled]{luximono}

%%----------------------------------------------------------------------
%%  hyperref
%%----------------------------------------------------------------------
\usepackage{hyperref}
\hypersetup{pdfauthor={Wolfgang Mehner, Germany, wolfgang-mehner@web.de}}
\hypersetup{pdfkeywords={Vim, Perl}}
\hypersetup{pdfsubject={Vim-plug-in,  awk-support.vim, hot keys}}
\hypersetup{pdftitle={Vim-plug-in,  awk-support.vim, hot keys}}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%  START OF DOCUMENT
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}%

\begin{multicols}{3}
%
\begin{center}
%
%%======================================================================
%%  title				[[[1
%%======================================================================
\textbf{\textsc{\small{Vim-Plug-in}}}\\
\textbf{\LARGE{awk-support.vim}}\\
\textbf{\textsc{\small{Version \Pluginversion}}}\\
\vspace{1mm}%
\textbf{\textsc{\Huge{Hot keys}}}\\ 
\vspace{1mm}%
Key mappings for Vim and gVim.\\
{\tiny  \texttt{https://www.vim.org}\hspace{1.5mm}---\hspace{1.5mm}\textbf{Wolfgang Mehner},  \texttt{wolfgang-mehner@web.de}}\\
\vspace{1.0mm}
{\normalsize (i)} insert mode, {\normalsize (n)} normal mode, {\normalsize (v)} visual mode\\
\vspace{1.0mm}
%
%%======================================================================
%%  table, left part				[[[1
%%======================================================================
%%~~~~~ TABULAR : begin ~~~~~~~~~~
\begin{tabular}[]{|p{11mm}|p{60mm}|}
%%----------------------------------------------------------------------
%%  show plug-in help
%%----------------------------------------------------------------------
\hline 
\multicolumn{2}{|r|}{\textsl{\textbf{H}elp}}\\[1.0ex]
\hline \verb'\he'   & English dictionary                     \hfill (n,i)\\
\hline \verb'\hm'   & display the Awk manual                 \hfill (n,i)\\
\hline \verb'\hp'   & help (plug-in)                         \hfill (n,i)\\
\hline 
%%----------------------------------------------------------------------
%%  menu comments
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{\textbf{C}omments}}                       \\[1.0ex]
\hline \Rep\verb'\cl'   & end-of-line comment               \hfill (n, i, v)\\
\hline \Rep\verb'\cj'   & adjust end-of-line comments       \hfill (n, i, v)\\
\hline     \verb'\cs'   & set end-of-line comment col.      \hfill (n)      \\
%
\hline \Rep\verb'\cc'   & code $\leftrightarrow$ comment    \hfill (n, i, v)\\
\hline     \verb'\co'   & uncomment code block              \hfill (n, i, v)\\
%
\hline     \verb'\cfr'  & frame comment                     \hfill (n, i)   \\
\hline     \verb'\cfu'  & function description              \hfill (n, i)   \\
\hline     \verb'\ch'   & file description                  \hfill (n, i)   \\
\hline     \verb'\csh'  & shebang                           \hfill (n, i)   \\
\hline     \verb'\cd'   & date                              \hfill (n, i)   \\
\hline     \verb'\ct'   & date \& time                      \hfill (n, i)   \\
\hline     \verb'\ck'   & keyword comments                  \hfill (n, i)   \\
\hline     \verb'\cma'  & plug-in macros                    \hfill (n, i)   \\
\hline
\end{tabular}\\
%%~~~~~ TABULAR :  end  ~~~~~~~~~~
%
%%======================================================================
%%  table, middle part				[[[1
%%======================================================================
%
%%~~~~~ TABULAR : begin ~~~~~~~~~~
\begin{tabular}[]{|p{11mm}|p{60mm}|}
%%----------------------------------------------------------------------
%%  menu statements
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{\textbf{S}tatements}}                    \\[1.0ex]
\hline \verb'\sd'      & \verb'do { } while'          \hfill (n, i, v)\\
\hline \verb'\sf'      & \verb'for ( ; ; )'           \hfill (n, i)\\
\hline \verb'\sfo'     & \verb'for ( ; ; ) {  }'      \hfill (n, i, v)\\
\hline \verb'\sfi'     & \verb'for ( in ) { }'        \hfill (n, i, v)\\
\hline \verb'\si'      & \verb'if ()'                 \hfill (n, i)\\
\hline \verb'\sif'     & \verb'if () { }'             \hfill (n, i, v)\\
\hline \verb'\sie'     & \verb'if () else'            \hfill (n, i, v)\\
\hline \verb'\sife'    & \verb'if (  ) { } else { }'  \hfill (n, i, v)\\
\hline \verb'\sw'      & \verb'while ()'              \hfill (n, i)\\
\hline \verb'\swh'     & \verb'while () { }'          \hfill (n, i, v)\\
\hline \verb'\ss'      & \verb'switch (  ) { }'       \hfill (n, i, v)\\
\hline \verb'\sc'      & \verb'case :	break'          \hfill (n, i)\\
\hline \verb'\sb'      & \verb'BEGIN { }'             \hfill (n, i, v)\\
\hline \verb'\se'      & \verb'END { }'               \hfill (n, i, v)\\
\hline
%%----------------------------------------------------------------------
%%  menu idioms
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{\textbf{I}dioms}}                 \\[1.0ex]
\hline \verb'\if' & \verb'function'            \hfill (n, i, v)\\
\hline
\hline
%%----------------------------------------------------------------------
%%  menu functions
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{\textbf{F}unctions}}              \\[1.0ex]
\hline \verb'\fn ' & numeric functions                       \hfill (n, i, v)\\
\hline \verb'\fs ' & string functions                        \hfill (n, i, v)\\
\hline \verb'\fio' & I/O functions                           \hfill (n, i, v)\\
\hline \verb'\ft ' & time functions                          \hfill (n, i, v)\\
\hline \verb'\fb ' & bit manipulations functions             \hfill (n, i, v)\\
\hline \verb'\fin' & internationalizationfunctions           \hfill (n, i, v)\\
\hline \verb'\fa ' & \texttt{isarray()}                      \hfill (n, i, v)\\
\hline
%%----------------------------------------------------------------------
%%  menu regex menu
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{Regular E\textbf{x}pressions}}     \\[1.0ex]
\hline     \verb'xpc' &  POSIX classes                 \hfill (n, i)\\ 
\hline     \verb'xro' &  Regex operators               \hfill (n, i)\\ 
\hline     \verb'xex' &  extended Regex                \hfill (n, i)\\ 
\hline     \verb'\xg' &  grouping                      \hfill (n, i, v)   \\
\hline     \verb'\xa' &  alternation                   \hfill (n, i, v)   \\
\hline     \verb'\xl' &  character list                \hfill (n, i, v)   \\
\hline     \verb'\xw' &  word                          \hfill (n, i)   \\
\hline
%%----------------------------------------------------------------------
%%  menu Special variables
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{\textbf{S}pecial Variables}}            \\[1.0ex]
\hline \verb'\va'   & built-in variables, auto-set        \hfill (n, i)\\
\hline \verb'\vm'   & built-in variables, user-modifiable \hfill (n, i)\\
\hline
%
\end{tabular}\\
%%~~~~~ TABULAR :  end  ~~~~~~~~~~
%
%%======================================================================
%%  table, right part				[[[1
%%======================================================================
%
%%~~~~~ TABULAR : begin ~~~~~~~~~~
\begin{tabular}[]{|p{11mm}|p{62mm}|}
%%----------------------------------------------------------------------
%%  snippet menu
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{S\textbf{n}ippet}}                \\[1.0ex]
\hline \verb'\nr'  & read code snippet         \hfill (n, i)   \\
\hline \verb'\nv'  & view code snippet         \hfill (n, i)   \\
\hline \verb'\nw'  & write code snippet        \hfill (n, i, v)\\
\hline \verb'\ne'  & edit code snippet         \hfill (n, i)   \\
%
\hline     \verb'\ntl' & edit local templates      \hfill (n, i)\\
\hline     \verb'\ntc' & edit custom templates     \hfill (n, i)\\
\hline     \verb'\ntp' & edit personal templates   \hfill (n, i)\\
\hline     \verb'\ntr' & reread the templates      \hfill (n, i)\\
\hline     \verb'\ntw' & template setup wizard     \hfill (n, i)\\
\hline     \verb'\nts' & choose template style     \hfill (n, i)\\
\hline
%%----------------------------------------------------------------------
%%  menu run
%%----------------------------------------------------------------------
\hline
\multicolumn{2}{|r|}{\textsl{\textbf{R}un}} \\[1.0ex]
\hline \verb'\rr '  & save and run script                 \hfill (n, i)   \\
\hline \verb'\rs '  & syntax check                        \hfill (n, i)   \\
\hline \verb'\rl '  & lint check                          \hfill (n, i)   \\
\hline \verb'\ra '  & script command line arguments       \hfill (n, i)   \\
\hline \verb'\raa'  & Awk command line arguments          \hfill (n, i)   \\
\hline \verb'\re'   & make script executable/not exec.    \hfill (n, i)   \\
\hline \verb'\rh '  & hardcopy buffer to FILENAME.ps      \hfill (n, i)   \\
\hline \verb'\rse'  & settings and hot keys               \hfill (n, i)   \\
\hline \verb'\rx '  & xterm size                          \hfill (n, i)   \\
\hline \verb'\ro '  & switch output destination           \hfill (n, i)   \\
\hline
\end{tabular}\\
%%~~~~~ TABULAR :  end  ~~~~~~~~~~
%
\begin{flushleft}
\large{\textbf{Ex Commands}}\\[1.0ex]
%
Set script command line arguments (same as \textbackslash\texttt{ra})\\[1.0ex]
\texttt{ :AwkScriptArguments}\\[1.0ex]
%
Set Awk command line arguments (same as \textbackslash\texttt{raa})\\[1.0ex]
\texttt{ :AwkArguments}\\[1.0ex]
\end{flushleft}
%
\end{center}%
\end{multicols}%
%
%%----- TABBING :  end  ----------
\end{document}
% vim: foldmethod=marker foldmarker=[[[,]]]
